package com.kuang.springCloud;

import org.springframework.cloud.client.loadbalancer.LoadBalanced;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.client.RestTemplate;

@Configuration
public class ConfigBean { //@Configuration

    //IRule  接口
    //IRule的实现类： RoundRobinRule： 轮询
    // IRule的实现类：AvailabilityFilteringRule ：会先过滤掉 跳闸、访问故障的服务，对剩下的进行轮询
    //IRule的实现类：RandomRule： 随机
    //IRule的实现类：RetryRule:会先按照轮询获取服务，如果访问获取失败，则会在指定时间内进行重试
    @Bean
    @LoadBalanced //Ribbon  配置负载均衡 实现TestTemplate  默认是轮询的算法（对于无法访问的服务也会请求）
    public RestTemplate getRestTemplate() {
        return new RestTemplate();
    }

}
